// async await
// 没有抛弃promise 抛弃烦人的thenable 链条
function sleep(time){
    // 耗时任务, 封装在promise内 resolve
    return new Promise((resolve) =>{
        setTimeout(resolve,time)
    })
}
// es7 函数的修饰符
(async function(){
    // 函数内部的异步任务 如果是promise 来封装的化 可以实现同步的效果
    // await 右边的返回值是promise实例的话
    console.log('Do something' + new Date())
    await sleep(3000); // await 是与async 一起出来的
    await sleep(3000);
    await sleep(3000);
    console.log('Do something' + new Date())
})();